//
//  WBStatus.swift
//  Weibo
//
//  Created by cc on 9/18/17.
//  Copyright © 2017 cc. All rights reserved.
//

import UIKit
import YYModel

/// 微博數據模型
class WBStatus: NSObject {

    //Int 類型，在 64位機器上是64位的，在32位機器上是32位的
    //如果不寫Int64，在 iPad2 / iPhone5/5c/4s/4 是無法正常運行的
    @objc var id: Int64 = 0
    /// 微博信息內容
    @objc var text: String?
    /// 微博创建时间字符串
    @objc var created_at: String? {
        didSet {
             createDate = Date.cz_sinaDate(string: created_at ?? "")
        }
    }
    
    
    /// 微博创建日期
    @objc var createDate: Date?
    
    
    /// 微博来源 - 发布微博使用的客户端
    @objc var source: String? {
        didSet {
            //重新计算来源并且保存
            // 在 didSet中给 source 再次设置值， 不会调用didSet
            source = "来自于 " + (source?.cz_href()?.text ?? "")
        }
    }
    /// 转发数
    @objc var reposts_count: Int = 0
    /// 评论数
    @objc var comments_count: Int = 0
    /// 点赞数
    @objc var attitudes_count: Int = 0
    /// 微博用户
    @objc var user: WBUser?
    /// 被轉發的原創微博
    @objc var retweeted_status: WBStatus?
    
    /// 微博配圖模型數組
    @objc var pic_urls: [WBStatusPicture]?
    
    /// 重寫 description 的計算型 屬性
    override var description: String {
        return yy_modelDescription()
    }
    
    /// 類函數， 告訴第三方構架，YY_Model 如果遇到數組類型的屬性，數組中存放的對象是什麼類
    @objc class func modelContainerPropertyGenericClass() -> [String: Any]? {
        return ["pic_urls": WBStatusPicture.self]
    }
    
    
}
